package pers.vankid.authchelper.helper;

import pers.vankid.common.model.authc.AuthcUser;
import pers.vankid.common.model.authc.AuthcUserResponse;

public interface AuthcHelper {
    /**
     * 登陆
     *
     * @param authcUser
     * @return
     */
    String login(AuthcUser authcUser) throws Exception;

    /**
     * 注销
     *
     * @param sign
     * @return
     */
    void layout(String sign) throws Exception;

    /**
     * 检查登陆状态
     *
     * @param sign
     * @return
     */
    boolean checkLogin(String sign) throws Exception;

    /**
     * 获取登陆用户数据
     *
     * @param sign
     * @return
     * @throws Exception
     */
    AuthcUserResponse getAuthcData(String sign) throws Exception;

    /**
     * 修改登陆用户数据
     *
     * @param sign
     * @return
     * @throws Exception
     */
    void updateAuthcData(String sign, AuthcUserResponse authcUserResponse) throws Exception;
}
